package test.base.medium.ffmpeg;


import org.bytedeco.ffmpeg.global.avcodec;
import org.bytedeco.ffmpeg.global.avutil;


/**
 * 视频关键属性
 * 
 * @author 37798955@qq.com
 *
 */
public class CVideo {
	public void ini(CVideo v) {
		this.i像素格式 = v.i像素格式;
		this.i比特率 = v.i比特率;
		this.i宽 = v.i宽;
		this.i帧率 = v.i帧率;
		this.i编码 = v.i编码;
		this.i高 = v.i高;
		// this.clone()
	}

	/**
	 * 
	 * 分辨率: 分辨率用于视频图像<br>
	 * 分辨率（kbps）＝文件大小（KB）＊8<br>
	 * 1080＊720的分度辨率，用5000Kbit左右；<br>
	 * 
	 * 720＊576的分辨率，用3500Kbit左右；<br>
	 * 
	 * 640＊480的分辨率，用2000Kbit左右。300byte<br>
	 * 
	 * 320*240的分辨率，用614Kbit左右。77byte<br>
	 */
	public final static int I最低分辨率 = 76800;
	public int i比特率 = I最低分辨率;
	/*
	 * 
	 * 采样率:横坐标的采样率表示了每秒钟的采样次数。 比特率: 纵坐标的比特率表示了用数字量来量化模拟量的时候的精度（在计算机里面占几个字节）。
	 * 码率=采样率*比特率
	 */

	/**
	 * 视频帧率
	 */
	public int i帧率 = 15;
	/**
	 * 视频宽度
	 */
	public int i宽 = 320;
	/**
	 * 视频高度
	 */
	public int i高 = 240;
	/**
	 * 视频压缩也就是视频压缩格式
	 */
	public int i编码 = avcodec.AV_CODEC_ID_H264;
	public int i像素格式 = avutil.AV_PIX_FMT_YUV420P;

	public void setSize(int 宽, int 高) {
		if (宽 > 0)
			this.i宽 = 宽;
		if (高 > 0)
			this.i高 = 高;
	}

	public int getI分辨率() {
		return i比特率;
	}

	public void setI分辨率(int 分辨率) {
		this.i比特率 = 分辨率;
	}

	public int getI帧率() {
		return i帧率;
	}

	public void setI帧率(int 帧率) {
		if (帧率 > 0)
			this.i帧率 = 帧率;
	}

	public int getI宽() {
		return i宽;
	}

	public void setI宽(int 宽) {
		if (宽 > 0)
			this.i宽 = 宽;
	}

	public int getI高() {
		return i高;
	}

	public void setI高(int 高) {
		if (高 > 0)
			this.i高 = 高;
	}

	public int getI编码() {
		return i编码;
	}

	public void setI编码(int 编码) {
		if (编码 > 0)
			this.i编码 = 编码;
	}

	public int getI像素格式() {
		return i像素格式;
	}

	public void setI像素格式(int 像素格式) {
		if (像素格式 > 0)
			this.i像素格式 = 像素格式;
	}

	
}
